<?php
$arrPage['title'] = trim(absolutelyEscapeString($_POST['title']));
$arrPage['menu_name'] = trim(absolutelyEscapeString($_POST['menu_name']));
$arrPage['url'] = trim(absolutelyEscapeString($_POST['url']));
$arrPage['text'] = absolutelyEscapeStringFromWysiwyg($_POST['text']);
$arrPage['ID_page'] = intval($_POST['ID_page']);

$pttern = array("/", "\\");
$arrPage['url'] = str_replace($pttern, "", $arrPage['url']); 

try{
	$e = new Exception_Multiline();
	if ($arrPage['ID_page'] != 3){
		if (strlen($arrPage['title']) < 2)
			$e[] = 'Заголовок слишком короткий';
		if (strlen($arrPage['menu_name']) < 2)
			$e[] = 'Имя меню слишком короткое';
		if (strlen($arrPage['text']) < 2)
			$e[] = 'Текст слишком короткий';
		if (!empty($arrPage['ID_page']) && Pages::checkUrl($arrPage['url'], $arrPage['ID_page']))
			$e[] = 'Такой URL уже существует';		
	}
		
	if ($e->isErrorExists()) // Если мы зафиксировали какие-то исключения, то выдаем окончательное исключение
     throw $e;
	else{
		if ($arrPage['ID_page']){
			Pages::updatePage($arrPage, $arrPage['ID_page']);
			$objSession->saveSuccessMessage('Страница упешно обновлена');
		}
		else {
			Pages::addPage($arrPage);
			$objSession->saveSuccessMessage('Страница упешно добавлена');
		}
		header('HTTP/1.1 301 Moved Permanently');
		header('Location: ' . W_ABSPATH . $arrPage['url']);
		exit();
	}
}
catch(Exception_Multiline $exM){
  $error = NULL;
  foreach ($exM as $eM) //Проходим по всем исключениям
    $error .= $eM . '<br />';  // Выводим отдельно взятое исключение
  User_User::setUserMessage($error, -1);
}
?>